home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Info-Mac 4
/
Info_Mac IV CD-ROM (Pacific HiTech Inc.)(August 1994).iso
/
Science
/
RLaB
/
misc
/
ANNOUNCE.v83
< prev
next >
Wrap
Text File
|
1994-04-25
|
7KB
|
210 lines
** RLaB Version 0.83 beta Available
For those of you already familar with RLaB, version 0.83 is
available. With this release development status is changed
from alpha, to beta. For those of you not familar with RLaB,
an edited version of the original announcement follows below.
A mailing-list has been created to facillitate discussion
amoungst RLaB users.
-------------------------------------------------------------
Mailing List Info
To be added or dropped:
Send mail to rlab-request@eskimo.com
This is read by a human, so no special syntax is required,
just state your desire.
To communicate with others on the list:
Send your message to rlab-list@eskimo.com
-------------------------------------------------------------
Enjoy,
Ian Searle
ians@eskimo.com
Original Announcement (edited/updated/corrected)
RLaB is a "MATLAB-like" matrix-oriented programming
language/toolbox. RLaB was in closed alpha testing for roughly
8 months, and has been in public alpha testing for roughly 6
months.
** Description:
RLaB is _not_ a clone of languages such as those used by tools
like MATLAB # or matrix_X/Xmath ##. However, as RLaB focuses
on creating a good experimental environment (or laboratory) in
which to do matrix math, it can be called "MATLAB-like" since
its programming language possesses similar operators and
concepts. Extensive use has been made of the LAPACK, FFTPACK
and RANLIB sources available from netlib.
The most significant difference between the other proprietary
tools and RLaB is the GNU Copyleft.
RLaB has several types: numeric, string, function, and list.
numeric: real or complex
scalar, 1 or 2 dim array (matrix)
string: scalar, 1 or 2 dim array (matrix)
function: builtin, or user-written
list: A heterogeneous associative array
(user-defined structure)
A set of built-in functions is provided, as well as a
capability to write your own functions in the RLaB language.
The language contains IF, FOR, and WHILE flow control
constructs, and a set of arithmetic, relational, and logical
operators.
The following is a list of the currently available functions:
abs conj floor matrix rank std
acos cos format max rcond strsplt
acosh cosh fprintf maxi read sum
all cross getline mean readm svd
any cumprod hess members real symm
asin cumsum hilb min redit system
asinh det ifft mini reshape tan
atan diag imag mod round tanh
atan2 diary inf name save tic
atanh diff int nan scalar toc
backsub eig inv norm show trace
balance epsilon isinf ode23 sign tril
cd error isnan ones sin triu
ceil exist length pause sinh type
chol exp linspace pclose size what
class eye load plot solve who
clear factor log printf sort whos
clearall fft log10 prod sprintf write
close find logspace qr sqrt writem
compan fix lu rand srand zeros
angle bandred chop detrend erf fliplr
flipud funm gamma house lagrange max2
min2 ode78 pinv poly polyval qq_normal
quad rem rk4 roots trapz
The following is an example of a RLaB function:
//
// Modified Gram-Schmidt
// Given A (MxN), with rank(A) = N. The following algorithm computes
// the factorization A = Q*R (skinny QR) where Q (MxN) has orthonormal
// columns and R (NxN) is upper triangular
//
// Algorithm from MATRIX Computations,
// G.H. Golub, C.F. Van Loan (page 219)
//
mgs = function(A)
{
local(a,k,j,n,m,q,r); // default variable scope is global
a = A; // args passed by reference
m = a.nr;
n = a.nc;
for(k in 1:n)
{
r[k;k] = norm( a[1:m;k], "2" );
q[1:m;k] = a[1:m;k]/r[k;k];
for(j in k+1:n)
{
r[k;j] = q[1:m;k]' * a[1:m;j];
a[1:m;j] = a[1:m;j] - q[1:m;k] * r[k;j];
}
}
return << q = q; r = r >>; // return a list
}
** Documentation:
1) A Complete RLaB Reference Manual is "in the works".
2.) There are several tutorials in the ./doc directory that
can be used until the reference manual is complete.
3) On-line help is present, and evolving (that is what you say
when something can only get better :-)
** Implementation:
RLaB is written in C. Although ANSI-C features have been used,
they can be turned off. RLaB has been compiled with Sun's
non-ANSI cc. The goal is, and will continue to be, to make
RLaB as portable as possible.
LAPACK, FFTPACK, and RANLIB Fortran libraries are used.
Currently f2c'ed versions of these libraries are available. It
is possible to use native Fortran libraries. In the future the
choice of Fortran, or f2c will be selectable during configure.
For the time being all that is needed is a C compiler, and the
f2c libraries (available from netlib).
GNUPLOT 3.x is used to handle the interactive plotting.
Users are expected to obtain: GNUPLOT (prep.ai.mit.edu),
libI77.a libF77.a (from the f2c distribution,
research.att.com) themselves.
Rlab has been ported to: SVR4 (i486)
DECstation 3100 (Ultrix 4.x)
Sun 4 (Sun OS-4.x)
IBM RS/6000
SGI
Titan P3000 (Sys Vr3.?/BSD)
NeXT
Linux
386BSD
** Current Status:
Beta test.
** Bug Reports:
Send bug reports, comments, complaints, suggestions, or
whatever to: ians@eskimo.com. Please include a script which
exercises the bug, along with a description of the hardware
and software platform.
** Acknowledgements:
I would like to thank Phillip Musumeci and Brad Hards for
volunteering to do the bulk of the documentation.
I would like to thank Mike Brennan, Scott Hunziker, Dave
Wilson, and Don Morris. I would also like to acknowledge the
alpha testers who have made invaluable contributions.
** Where to get it:
At present there are several ftp sites, all graciously
donated, they are:
evans.ee.adfa.oz.au in: /pub/RLaB
mizar.docs.uu.se in: /pub/gnu/RLaB
The set of files to get is:
rlab-0.83.tar.Z
rblas.tar.Z BLAS library
rlap-0.30.tar.Z LAPACK library
rfft-0.11.tar.Z FFTPACK library
rnlib-0.11.tar.Z RANLIB library
Please try and get the sources during non prime time hours.
Enjoy...
Ian Searle
ians@eskimo.com
# MATLAB is a trademark of The Math Works.
## matrix_X and Xmath are trademarks of I.S.I.